package com.myk.game.gobangchess.rooms.prerooms;

import com.myk.game.gobangchess.rooms.absrooms.AbsChessRoom;
import com.myk.game.gobangchess.utils.GridsUtils;

/**
 * 永恒象棋
 * https://tieba.baidu.com/p/3770148769
 */
public class EternalChessRoom extends AbsChessRoom {

    public EternalChessRoom(String roomName) {
        super(roomName, "日出设计的经典新棋作品，逆界黑白官方群的最初渊源。", "永恒象棋", GridsUtils.createEmptyGrids(9,8), true, true);
    }

    @Override
    public String getRuleText() {
        return "《永恒象棋规则》\n" +
                "[棋盘]" +
                "中间一排为公共区域，这一排分隔双方半区。\n" +
                "双方半区底线中间2x2的格子是双方的禁区。\n" +
                "[棋子]" +
                "初始公共区域放满河中石，河中石不能移动，可做双方的炮架和跳板。\n" +
                "双方各自拥有车马炮象士兵棋子各2个，在各自半区固定布局。\n" +
                "各个棋子的走法如下：\n" +
                "车：如同象棋的车。\n" +
                "马：如同国际象棋的马。\n" +
                "炮：如同中国象棋的炮。\n" +
                "象：如同国际象棋的象。\n" +
                "士：本身无固定走法，如果于“车马炮象”四种棋子直向相邻，可模仿其走法和吃法。\n" +
                "兵：如同跳棋那样越子移动和吃子，可以直向和斜向跳跃。只满足跳子条件且没有吃子可以连续跳。\n" +
                "[行棋]\n" +
                "黑先白后轮流走棋，每次走1步棋，直到分出胜负。\n" +
                "吃子方式类似于象棋的落点踩吃，区别在于双方棋子和河中石都可以吃。\n" +
                "如果吃了河中石，直接将河中石从场上移出\n" +
                "如果吃的己方棋子，则放回到己方半场任意空格，同理对方棋子放入对方半场。\n" +
                "己方棋子进入己方禁区时，任何棋子都不能吃它，己方禁区只能进入1个己方棋子。\n" +
                "己方棋子进入对方禁区时获得1分，然后对方需要将该棋子放回到我方半场任意空格。\n" +
                "[胜负]\n" +
                "率先获得4分的一方获胜。";
    }

    @Override
    protected void onStartPrepare() {
        initChessList();//重新创建初始布局的棋子
        noticeBlackMove(); //默认通知黑方先行动
    }

    private void initChessList() {

    }

    @Override
    public void doRule(int row, int col, int value) {

    }
}
